package com.ica.model.command;

import java.util.List;
import com.ica.model.contact.ContactGroup;
import com.ica.model.util.IdentifiableModelObject;

import android.content.Context;
import android.util.Log;

public abstract class AbstractCommand extends IdentifiableModelObject {
	
	public abstract boolean execute(Context context);
	
	public void setId(long id) {
		this.id = id;
	}
	
	public void addCommand(AbstractCommand command) throws UnsupportedOperationException {
		throw new UnsupportedOperationException();
	}

	public void removeCommand(AbstractCommand command) throws UnsupportedOperationException {		
		throw new UnsupportedOperationException();
	}
	
	public List<AbstractCommand> getCommands() throws UnsupportedOperationException {	
		throw new UnsupportedOperationException();
	}

	public void setReceiver(ContactGroup receiver) throws UnsupportedOperationException {	
		throw new UnsupportedOperationException();
	}

	public void setTextMessage(String body) throws UnsupportedOperationException {	
		throw new UnsupportedOperationException();
	}
	
	public void setVol(int vol) throws UnsupportedOperationException {	
		throw new UnsupportedOperationException();
	}
	
	public String getName() throws UnsupportedOperationException {		
		throw new UnsupportedOperationException();
	}

	public void setName(String name) throws UnsupportedOperationException {		
		throw new UnsupportedOperationException();
	}
	
	//DEBUG METHODS
	protected void log(String message) {
		Log.w("DEBUG",message);
	}
}
